Data transport between a media gateway and server

ABSTRACT

A system and method for reducing latency includes receiving at a gateway time division multiplexed data from multiple sender devices, the time division multiplexed data including payloads. The method also includes a generated packet that includes the payloads from the received time division multiplexed data from the multiple sender devices. The method also includes indicating in the generated packet a destination indication associated with at least some of the payloads of the received time division multiplexed data and forwarding the generated packet to a media server.

BACKGROUND

Media services play an important part in telecommunication systems such as call centers, traditional public switched telephone network (PSTN) switches, and conferencing servers. The convergence of IP technology with telecommunication networks uses media services provided from the Internet to users either in the IP network or in another network. Many types of media services can be deployed.

Media services provided across multiple types of networks, e.g., calls traveling from the Internet to another network can experience unacceptable delay. A portion of the delay is due to the use of a gateway (e.g., a media gateway) and media server that connect the networks. A media gateway, e.g., circuit switch, IP gateway, or channel bank that converts data from a format required for one network to the format required for another network.

DESCRIPTION OF DRAWINGS

FIG. 1 is a block diagram of a system including a time division multiplexed (TDM) network and in Internet protocol (IP) based network.

FIG. 2 is a block diagram of a frame or packet.

FIG. 3 is a flow chart.

DESCRIPTION

Referring to FIG. 1, a media services architecture including time division multiplexed networks 13 and 15 in communication with an internet protocol (IP) network 11. Media gateways 14 and 17 provide an interface between the TDM networks 13 and 15 and IP network 11. In general, a media gateway formats a packet, frame, or other data from a format required by a protocol on one network to a format required by another protocol on a different network. IP network 11 also includes on or more media servers 16. The media gateways 14 and 17 and media server 16 run processes that respectively aggregate packet payloads 72 and de-aggregate packet payloads 88 and process frames 80 as will be further described below. In addition, a media server can perform voice or media compression or other data manipulation. An IP network 11 can be used to transmit media such as voice, video, collaboration data, and the like between multiple parties where the multiple parties need to see or hear media in a real-time or semi-real time manner. Media gateways 14 and 17 provide an interface between the TDM based networks 13 and 15 and the IP based network 11.

One or more time division multiplexed (TDM) based networks route data to the media gateway 14 or 17 and the media gateway 14 or 17 transmits the data over the IP network 11. For example, if the sender and receiver are both on the TDM based networks 13 and 15, the data can be transmitted to the media server 16 over the IP network 11. In other examples, the receiver or the sender may be located within the IP network 11 and the second party located on a TDM network. When a sender and receiver are on networks running different protocols, the packet may be routed from the media gateway 14 to the receiver without passing through the media server 16. While such architecture 10 using media gateways, can simplify the routing and collection of data from the TDM based network 13 or 15 and simplify the data conversion to a format recognized by the IP based network 11, the architecture 10 can also increase the delay incurred when transmitting a packet from a sender 12 to a receiver. For example, when a sender and receiver are both located outside the IP network 11, the packet or data will incur delay associated with the transmission of the packet from the media gateway 14 or 17 to the media server 16 to the media gateway 14 or 17.

A conferencing application can require low latency. Long delays can be experienced by callers that use a gateway to connect from a Public Switched Telephone Network (PSTN) network to an Internet Protocol (IP) network, to use, e.g., conferencing services located on the IP network 11. This delay can be due to the compression of speech signals by the gateway 14 for transmission over the IP network. Further delay is introduced as compressed speech frames arrive at the conferencing center (e.g., the media server 16) because the frames are decompressed and buffered for the removal of network jitter. Additionally, a mixed packet stream may need to be delivered back to the media gateway 14, therefore, introducing a second jitter buffer inside the gateway 14. Other delays include those associated with speech decoding, speech look-ahead buffering, network delay, and transmission delay.

The delay for a roundtrip data transmission can be substantial. For example, the delay can be large when more multiple parties call from TDM networks (e.g., PSTN networks) and share media content. For example, when a first party located in network 13 desired to communicate with a second party in network 15. In this example, assuming there is little network jitter and negligible transmission delay, the parties calling from a PSTN or TDM network in a conference would experience approximately 170 ms roundtrip delay when talking to each other using the Internet engineering task force (IETF) recommended a packet size corresponding to, e.g., 20 ms of data for the high compression speech codec ITU-T G.729. The delay includes the delay associated with encode buffering and look ahead buffering, server jitter buffer delay, mixing operation delay, plus gateway buffering. Typical delay times for these delays can be approximately 25 ms+20 ms+20 ms+20 ms in each direction resulting in a total roundtrip time of estimate of 170 ms. Additional propagation delay could add approximately 50 ms in each direction (assuming a relatively long transmission) resulting in a total roundtrip delay of 270 ms. This level of delay may not be acceptable for some media applications.

FIG. 1 shows a gateway-server-gateway connection (for example, as used in conferencing multiple PSTN customers) however, other connections are possible. For example, a single gateway-server connection could be used to conference a PSTN customer with another user on the IP network

Referring to FIG. 2, a packet aggregation or data transport technique for reducing delay of data transmitted on architecture 10 is shown. The data transport technique transmits packets at decreased packet intervals without introducing substantial packet overhead to reduce the overall latency in the conference call.

In architecture 10, data (e.g., time division multiplexed (TDM) based data) from multiple callers or senders received by the media gateway 14 or 17 is forwarded to the media server 16. The payloads for multiple packets, from multiple data streams, or from multiple senders can be combined into a larger packet (superframe) and sent from the media gateway 14 to the media server 16. By taking advantage of the common destination of the data, the overhead for the packets sent to the media server can be reduced.

As shown in FIG. 2, multiple data streams 32 a, 38 a, and 44 a include a header 34 a, 40 a, and 46 a respectively and a payload 36 a, 42 a, and 48 a respectively. The multiple data streams are received by the gateway 14 or 17 and the gateway 14 or 17 generates a generated packet 50, e.g., packet 50 for transmission to the IP network 11. For example, the gateway performs TDM-IP packet conversion to generate packets in a format used on the IP network 11 based on the data included in a TDM based signal or data stream. The payload of the generated packet 50 includes multiple payloads (e.g., payloads 36 a, 42 a, and 48 a) from the TDM-based data stream received by the gateway 14 or 17. Since the final destination or an intermediate destination of the payloads 36, 42, and 48 may differ, a destination indication, e.g. a port number, is associated with each payload in packet 50. For example, the header 34 a of packet 32 a indicates the destination of packet 32 a. In the generated packet 50, the destination is indicated by the destination indication, e.g. a port number 58 that is associated with the payload 36 a. The destination indication, e.g. a port number 58 can be associated with a particular receiver or data channel.

For example, a packet can be sent from TDM network 13 to TDM network 15 via IP network 11. In this example, gateway 14 sends packet 50 to the media server 16 (FIG. 1). Subsequent to the media server processing the packet 50, the media server sends the packet to gateway 17 (FIG. 1). Gateway 17 interfaces between IP network 11 and TDM based network 15 and generates multiple TDM based data streams 32 b, 38 b, and 44 b from packet 50. The multiple data streams 32 b, 38 b, and 44 b include multiple payloads 36 b, 42 b, and 48 b. The gateway 17 also adds a header 34 b, 40 b, and 46 b to each of the data streams 32 b, 38 b, and 44 b based on the port associated with the payload in packet 50.

The packets 50 are generated according to a predefined, common format. The media gateway 14 generates the packet 50 including multiple payloads, the media server 16 processes the packet, and the media gateway 17 sends the payloads to the appropriate destinations. In each packet (e.g., packets received from the media gateway 14 and packets 50 generated for forwarding to the media server 16), all payloads are of the same type. For example, the payloads can be defined by a standard such as RFC1889, to allow a receiver and a transmitter to have the common knowledge of the structure and content of the packets. The type can be indicated in the Real Time Protocol (as described in Internet Engineering Task Force (IETF) Request for Comments (RFC) 1889) header 56 of packet 50.

In each packet or data stream (e.g., data received by the media gateway 14 and packets 50 generated for forwarding to the media server 16), all of the payloads have the same size or length. The length is common such that the media server 16 can identify the individual payloads and destination indications. The size of the payload can vary according to the particular Internet Engineering Task Force (IETF) standard used by the network for media transmissions. For example, the ITU-T G.711 standard includes packets with a payload length of 1 ms, the G.729 standard includes a payload length of 10 ms, the G.723.1 standard includes a payload length of 30 ms, and the like. The payload size can be the minimum frame size of the payload type for the implemented standard. In embodiments where the payload size is the minimum frame size of the payload type for the implemented standard, the payload type indicated in the RTP header 56 can also indicate the payload length.

Packet 50 also includes a User Datagram Protocol (UDP) header 54 that includes an indication of the length of packet 50. The number of payloads included in packet 50 is established based on the length of the packet (as indicated in header 54) and the payload type (as indicated in RTP header 56). The destination indication, e.g. port number in packet 50 is of a predefined length and can be independent of the payload type. For example, the port can be represented by two bytes.

Media that is transmitted can include voice frames and silence indication frames (SID frames). Either packet 50 includes either payloads for multiple voice frames or multiple SID frames. A packet 50 including payloads for multiple voice frames can be referred to as a voice superframe while a packet 50 including multiple SID frames can be referred to as an SID superframe. A bit in the RTP header (e.g., marker bit 55) indicates whether a packet 50 is a voice superframe or an SID superframe. For example, for a packet 50 including voice frames, marker bit 55 is set to 0 while for a packet 50 including SID frames marker bit 55 is set to 1 (or vice versa). The payload type indicated in the RTP header 56 and the packet length indicated in the UDP header 54 determine the number of SID frames in an SID superframe or voice frames in a voice superframe.

In some embodiments, the size of packet 50 is limited by the protocol of the associated IP network 11. For example, Ethernet specifies a maximum packet size of 1500 bytes. Thus, the transmitter and receiver conform to this maximum size such that the size of the payload of the superframe (e.g., the total size of the payloads from multiple packets, the associated port indications, and packet header information) does not exceed the specified length for the network.

In addition to voice data and silence indication data, tone data (e.g., tone data is described in RFC 2833) can also be transmitted between a TDM based network and an IP based network via a media gateway and server. In general, tone data is small in size and infrequent in transmission in comparison to the voice data. The tone data is not included in the superframes generated by the media gateway. Instead, the tone data is transported separately between the sender and receiver as individual transmissions. For example, the tone data may not be included in the superframes due to the difference in size compared to voice frames. In addition, the tone data may not be included in the superframes due to the infrequent transmission of tone data. Since tone data is generally transmitted infrequently, handling the tone packets separately is sufficient. In addition, tone information (control information) has less latency requirements in comparison to voice frames.

As described above, the generation and transmission of superframes between the media gateway and the media server can reduce data transport latency without introducing significant overhead. In addition, in some embodiments, the use of the superframe can improve the overall voice or media quality due to the shorter sampling durations. The superframe can also simplify or reduce the computation requirements at the media server because a single header is processed and all payloads for the superframe are of the same type and length.

Referring to FIG. 3, a process 70 including the use of superframes for transmission of packets with multiple payloads between a media gateway and a media server is shown. Process 70 includes three processes 72, 80, and 88 that are executed respectively at a sending media gateway, e.g., media gateway 14 (FIG. 1), a media server, e.g., media server 16 (FIG. 1), and a receiving media gateway, e.g. media gateway 17 (FIG. 1). In general, gateways 14 and 17 perform TDM-IP packet conversion to provide an interface between a TDM-based networks 13 and 15 and an IP-based network 11.

Process 72 is executed at a media gateway and includes receiving 74 one or more data streams from multiple senders in a TDM based network. The media gateway 14 aggregates 76 the payloads from the multiple data streams to generate a packet (e.g., a superframe) having multiple payloads and sends 78 the generated packet to a media server 16.

Process 80 is executed at a media server 14 and includes receiving 82 a frame with an aggregated payload from the media gateway. The media server processes 84 the payloads of the received frame and forwards 86 the frame to a media gateway.

Process 88 is executed at a media gateway and includes receiving 90 the frame with the aggregated payload from the media server 16. The media gateway generates 92 multiple TDM based data steams based on the payloads included in the superframe received from the media server 16. The media gateway forwards 94 the data (each data stream having a single payload) to a receiver (e.g., on the TDM based network) associated with the port indicated in the superframe.

While the description above includes generation of superframes for transmission between a media gateway and a media server, a similar frame structure and payload aggregation could be used for transmission of frames between two media gateways (e.g., without an intermediate media server). In addition, a similar frame structure and payload aggregation could be used between two devices where packets received at a first device are forwarded to the second device regardless of location of the frame origination or the destination of the frame.

Other embodiments are within the scope of the following claims. 

1. A method comprising: receiving at a gateway time division multiplexed data from multiple sender devices or TDM channels, the time division multiplexed data including payloads; generating a generated packet that includes the payloads from the received time division multiplexed data from the multiple sender devices; indicating in the generated packet a destination indication associated with at least some of the payloads of the received time division multiplexed data; and forwarding the generated packet toward a device on an Internet Protocol (IP) based network.
 2. The method of claim 1 wherein the device on an Internet Protocol (IP) based network is a media server.
 3. The method of claim 1 wherein the destination indication indicates an associated data channel.
 4. The method of claim 1 wherein the destination indication indicates an associated port.
 5. The method of claim 1 wherein the payloads have a fixed length.
 6. The method of claim 1 wherein the payloads include voice frames.
 7. The method of claim 1 wherein the payloads only include voice frames.
 8. The method of claim 1 wherein the payloads include silence indication (SID) frames.
 9. The method of claim 1 wherein the payloads only include silence indication (SID) frames.
 10. The method of claim 1 further comprising limiting the length of the formed packet based on an IP network protocol.
 11. The method of claim 1 further comprising forwarding a tone packet separately from the generated packet.
 12. The method of claim 1 wherein forwarding the generated packet to a media server reduces latency in receiving the packet compared to receiving the plurality of packets.
 13. The method of claim 1 wherein the time division multiplexed data is from a plurality of systems.
 14. The method of claim 1 wherein the generated packet includes: an IP header, a UDP header, an RTP header, and a payload comprising alternating sequences of a destination indication and an associated payload of the received time division multiplexed data.
 15. A device configured to: receive time division multiplexed data from multiple sender devices or TDM channels on the TDM based network, the time division multiplexed data including payloads; generate a generated packet that includes the payloads from the received time division multiplexed data from the multiple sender devices; indicate in the generated packet a destination indication associated with at least some of the payloads of the received time division multiplexed data; and forward the generated packet toward a device on the IP based network.
 16. The device of claim 15 wherein the payloads have a fixed length.
 17. The device of claim 15 wherein the payloads include voice frames.
 18. The device of claim 15 wherein the payloads include silence indication frames.
 19. The device of claim 15 further configured to forward a tone packet separately from the generated packet.
 20. A computer program product, tangibly embodied in an information carrier, for executing instructions on a processor, the computer program product being operable to cause a machine to: receive time division multiplexed data from multiple sender devices or TDM channels on a TDM based network, the time division multiplexed data including payloads; generate a generated packet that includes the payloads from the received time division multiplexed data from the multiple sender devices; indicate in the generated packet a destination indication associated with at least some of the payloads of the received time division multiplexed data; and forward the generated packet toward a device on an IP based network.
 21. The computer program product of claim 20 further comprising instructions to limit the length of the formed packet based on a network protocol.
 22. The computer program product of claim 20 further comprising instructions to forward a tone packet separately from the generated packet.
 23. A system comprising: an input; a gateway; and an output, wherein: the input provides a communication path between a TDM based network and the gateway; the output provides a communication path between the gateway and an IP based network; and the gateway is configured to: receive time division multiplexed data from the input, the time division multiplexed data including payloads; generate a generated packet that includes the payloads from the received time division multiplexed data; indicate in the generated packet a destination indication associated with at least some of the payloads of the received time division multiplexed data; and forward the generated packet to a device on an IP based network.
 24. The system of claim 23 wherein the gateway is further configured to forward a tone packet separately from the generated packer.
 25. A method comprising: receiving a packet from a device on an Internet Protocol (IP) based network, the packet including a payload comprising data from multiple sender devices on a TDM based network; generating a generated packet that includes a payload comprising a portion of the payload from the received packet; and forwarding the generated packet to a device on the TDM based network.
 26. The method of claim 25 wherein the payload includes at least one of voice frames and silence indication frames.
 27. The method of claim 25 further comprising forwarding a tone packet separately from the generated packet.
 28. A media gateway configured to: receive a packet from a device on an Internet Protocol (IP) based network, the packet including a payload comprising data from multiple sender devices on a TDM based network; generate a generated packet that includes a portion of the payload from the received packet; and forward the generated packet to a device on the TDM based network.
 29. The device of claim 28 wherein the payload includes voice frames.
 30. The device of claim 28 wherein the payload includes silence indication frames.
 31. The device of claim 28 further configured to forward a tone packet separately from the generated packet.
 32. A computer program product, tangibly embodied in an information carrier, for executing instructions on a processor, the computer program product being operable to cause a machine to: receive a packet from a device on an Internet Protocol (IP) based network, the packet including a payload comprising data from multiple sender devices on a TDM based network; generate a generated packet that includes a portion of the payload from the received packet; and forward the generated packet to a device on the TDM based network.
 33. The method of claim 32 wherein the computer program product further comprises instructions to forward a tone packet separately from the generated packet. 